home *** CD-ROM | disk | FTP | other *** search
/ Windows Game Programming for Dummies (2nd Edition) / WinGamProgFD.iso / mac / DirectX SDK / DXSDK / samples / Multimedia / DirectShow / Common / namedguid.h < prev    next >
C/C++ Source or Header  |  2001-10-08  |  7KB  |  128 lines

  1. //------------------------------------------------------------------------------
  2. // File: NamedGuid.h
  3. //
  4. // Desc: DirectShow sample code - helps in converting GUIDs to strings
  5. //
  6. // Copyright (c) 2000-2001 Microsoft Corporation.  All rights reserved.
  7. //------------------------------------------------------------------------------
  8.  
  9. #ifndef NAMEDGUID_H_DEFINED
  10. #define NAMEDGUID_H_DEFINED
  11.  
  12. // Function prototypes
  13. void GetGUIDString(TCHAR *szString, GUID *pGUID);
  14. void GetFormatString(TCHAR *szFormat, DMO_MEDIA_TYPE *pType);
  15. void GetTypeSubtypeString(TCHAR *szCLSID, DMO_PARTIAL_MEDIATYPE& aList);
  16.  
  17. struct NamedGuid
  18. {
  19.     const GUID *pguid;
  20.     const TCHAR *psz;
  21. };
  22.  
  23. extern const NamedGuid rgng[];
  24.  
  25. //
  26. // Define some Windows Media GUIDs to remove need for large WM header files.
  27. // This is OK since GUIDs don't change.
  28. //
  29.  
  30. // 00000000-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_Base 
  31. EXTERN_GUID(WMMEDIASUBTYPE_Base, 
  32. 0x00000000, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  33. // 73646976-0000-0010-8000-00AA00389B71  'vids' == WMMEDIATYPE_Video 
  34. EXTERN_GUID(WMMEDIATYPE_Video, 
  35. 0x73646976, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  36. // e436eb78-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB1 
  37. EXTERN_GUID(WMMEDIASUBTYPE_RGB1, 
  38. 0xe436eb78, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  39. // e436eb79-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB4 
  40. EXTERN_GUID(WMMEDIASUBTYPE_RGB4, 
  41. 0xe436eb79, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  42. // e436eb7a-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB8 
  43. EXTERN_GUID(WMMEDIASUBTYPE_RGB8, 
  44. 0xe436eb7a, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  45. // e436eb7b-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB565 
  46. EXTERN_GUID(WMMEDIASUBTYPE_RGB565, 
  47. 0xe436eb7b, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  48. // e436eb7c-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB555 
  49. EXTERN_GUID(WMMEDIASUBTYPE_RGB555, 
  50. 0xe436eb7c, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  51. // e436eb7d-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB24 
  52. EXTERN_GUID(WMMEDIASUBTYPE_RGB24, 
  53. 0xe436eb7d, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  54. // e436eb7e-524f-11ce-9f53-0020af0ba770            MEDIASUBTYPE_RGB32 
  55. EXTERN_GUID(WMMEDIASUBTYPE_RGB32, 
  56. 0xe436eb7e, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  57. // 30323449-0000-0010-8000-00AA00389B71  'YV12' ==  MEDIASUBTYPE_I420 
  58. EXTERN_GUID(WMMEDIASUBTYPE_I420, 
  59. 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  60. // 56555949-0000-0010-8000-00AA00389B71  'YV12' ==  MEDIASUBTYPE_IYUV 
  61. EXTERN_GUID(WMMEDIASUBTYPE_IYUV, 
  62. 0x56555949, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  63. // 31313259-0000-0010-8000-00AA00389B71  'YV12' ==  MEDIASUBTYPE_YV12 
  64. EXTERN_GUID(WMMEDIASUBTYPE_YV12, 
  65. 0x32315659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  66. // 32595559-0000-0010-8000-00AA00389B71  'YUY2' == MEDIASUBTYPE_YUY2 
  67. EXTERN_GUID(WMMEDIASUBTYPE_YUY2, 
  68. 0x32595559, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  69. // 59565955-0000-0010-8000-00AA00389B71  'UYVY' ==  MEDIASUBTYPE_UYVY 
  70. EXTERN_GUID(WMMEDIASUBTYPE_UYVY, 
  71. 0x59565955, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  72. // 55595659-0000-0010-8000-00AA00389B71  'YVYU' == MEDIASUBTYPE_YVYU 
  73. EXTERN_GUID(WMMEDIASUBTYPE_YVYU, 
  74. 0x55595659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  75. // 39555659-0000-0010-8000-00AA00389B71  'YVU9' == MEDIASUBTYPE_YVU9 
  76. EXTERN_GUID(WMMEDIASUBTYPE_YVU9, 
  77. 0x39555659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  78. // 3334504D-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_MP43 
  79. EXTERN_GUID(WMMEDIASUBTYPE_MP43, 
  80. 0x3334504D, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  81. // 5334504D-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_MP4S 
  82. EXTERN_GUID(WMMEDIASUBTYPE_MP4S, 
  83. 0x5334504D, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  84. // 31564D57-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_WMV1 
  85. EXTERN_GUID(WMMEDIASUBTYPE_WMV1, 
  86. 0x31564D57, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  87. // 3153534D-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_MSS1 
  88. EXTERN_GUID(WMMEDIASUBTYPE_MSS1, 
  89. 0x3153534D, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  90. // 73647561-0000-0010-8000-00AA00389B71  'auds' == WMMEDIATYPE_Audio 
  91. EXTERN_GUID(WMMEDIATYPE_Audio, 
  92. 0x73647561, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  93. // 00000001-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_PCM 
  94. EXTERN_GUID(WMMEDIASUBTYPE_PCM, 
  95. 0x00000001, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  96. // 00000009-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_DRM 
  97. EXTERN_GUID(WMMEDIASUBTYPE_DRM, 
  98. 0x00000009, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  99. // 00000161-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_WMAudioV7 
  100. EXTERN_GUID(WMMEDIASUBTYPE_WMAudioV7, 
  101. 0x00000161, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  102. // 00000161-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_WMAudioV2 
  103. EXTERN_GUID(WMMEDIASUBTYPE_WMAudioV2, 
  104. 0x00000161, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  105. // 00000130-0000-0010-8000-00AA00389B71            WMMEDIASUBTYPE_ACELPnet 
  106. EXTERN_GUID(WMMEDIASUBTYPE_ACELPnet, 
  107. 0x00000130, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  108. // 73636d64-0000-0010-8000-00AA00389B71  'scmd' == MEDIATYPE_Script 
  109. EXTERN_GUID(WMMEDIATYPE_Script, 
  110. 0x73636d64, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  111. // 34A50FD8-8AA5-4386-81FE-A0EFE0488E31            WMMEDIATYPE_Image 
  112. EXTERN_GUID(WMMEDIATYPE_Image, 
  113. 0x34a50fd8, 0x8aa5, 0x4386, 0x81, 0xfe, 0xa0, 0xef, 0xe0, 0x48, 0x8e, 0x31); 
  114. // 05589f80-c356-11ce-bf01-00aa0055595a        WMFORMAT_VideoInfo 
  115. EXTERN_GUID(WMFORMAT_VideoInfo, 
  116. 0x05589f80, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a); 
  117. // 05589f81-c356-11ce-bf01-00aa0055595a        WMFORMAT_WaveFormatEx 
  118. EXTERN_GUID(WMFORMAT_WaveFormatEx, 
  119. 0x05589f81, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a); 
  120. // 5C8510F2-DEBE-4ca7-BBA5-F07A104F8DFF        WMFORMAT_Script 
  121. EXTERN_GUID(WMFORMAT_Script, 
  122. 0x5c8510f2, 0xdebe, 0x4ca7, 0xbb, 0xa5, 0xf0, 0x7a, 0x10, 0x4f, 0x8d, 0xff); 
  123. // 82f38a70-c29f-11d1-97ad-00a0c95ea850        WMSCRIPTTYPE_TwoStrings 
  124. EXTERN_GUID( WMSCRIPTTYPE_TwoStrings, 
  125. 0x82f38a70,0xc29f,0x11d1,0x97,0xad,0x00,0xa0,0xc9,0x5e,0xa8,0x50); 
  126.  
  127.  
  128. #endif